<?php

class RegisterController extends Controller
{
	public $layout = '//layouts/column1';
	
	public function actionIndex()
	{
		if(! Yii::app()->user->isGuest)
		{
			Yii::app()->user->setFlash('notice',Yii::t('user','Chức năng này chỉ sử dụng cho thành viên chưa đăng nhập.'));
			$this->redirect(Yii::app()->user->returnUrl);
		}

		$model=new CreateUserForm('register');

	    if(isset($_POST['CreateUserForm']))
	    {
	        $model->attributes=$_POST['CreateUserForm'];

	        if($model->validate())
	        {
				$user = new User;				
	        	
	        	$model->password = $user->generatePassword();

				$user->group_id = UserGroup::MEMBER;
				$user->first_name = $model->first_name;
				$user->last_name = $model->last_name;
				$user->name = $model->name;
				$user->email = $model->email;
				 
				$user->join_date = time();
				
				if($user->save())
				{
					if(! $this->sendWelcomeEmail($model))
					{
						Yii::app()->user->setFlash('error',Yii::t('user','Cấu hình PHPMailer có sai sót, email chưa được gửi đến thành viên.'));
						$this->refresh();
					}
					else
					{
						Yii::app()->user->setFlash('success',Yii::t('user','Đăng ký thành công. Bạn hãy kiểm tra email để nhận thông tin đăng nhập.'));
						$this->redirect(array('/user/login'));
					}
				}
	        }
	    }
	    $this->render('register',array('model'=>$model));
	}	


	/**
	 * Update on May 27, 2012
	 *
	 * @var AR CreateUserForm model
	 **/
	private function sendWelcomeEmail($model)
	{
		$message = "Xin chao <strong>{$model->name}</strong>, <br /><br />
			Mot tai khoan thanh vien vua duoc tao ra cho ban tai trang web <strong>".Yii::app()->name."</strong><br />
			Day la thong tin dang nhap cua ban:<br />
			Ten dang nhap: {$model->email}<br />
			Mat khau: {$model->password}<br /><br />
			Luu y: Hay thay doi mat khau de dam bao su an toan cho tai khoan.<br />
			<a href='" . Yii::app()->controller->createAbsoluteUrl('/user/profile/changePassword') . "'>
			Nhan vao day de dang nhap va thay doi mat khau.
			</a>";
		
		$mail = NMailer::SetupSmtpMail();
		$mail->AddAddress($model->email, $model->name);
		$mail->Subject = "Thu xac nhan dang ky thanh vien";
		$mail->Body = $message;
		try {
			return $mail->Send();
		} catch(Exception $e)
		{
			return false;
		}
	}
	
	public function actionShowRegisterRule()
	{
		$content = WebSetting::get('user-register-rule');
		
		if(Yii::app()->request->isAjaxRequest)
		{
			echo $content;
		}
		else
		{
			$this->render('show-register-rule', array('content'=>$content));
		}
	}
}